Engineering Variance: Software Techniques for Scalable, Customizable, and Reusable Multimodal Processing
نویسندگان
چکیده
This article describes four software techniques to enhance the overall quality of multimodal processing software and to include concurrency and variance due to individual characteristics and cultural context. First, the processing steps are decentralized and distributed using the actor model. Second, functor objects decouple domainand applicationspecific operations from universal processing methods. Third, domain specific languages are provided inside of specialized feature processing units to define necessary algorithms in a human-readable and comprehensible format. Fourth, constituents of the DSLs (including the functors) are semantically grounded into a common ontology supporting syntactic and semantic correctness checks as well as code-generation capabilities. These techniques provide scalable, customizable, and reusable technical solutions for reoccurring multimodal processing tasks.
منابع مشابه
Customizable Domain Analysis
Generative and Component-Based Software Engineering are approaches to reuse. Within both approaches the scope of reuse can vary between general purpose and application specific. We argue for scoping the reusable assets based on a product line. Domain analysis methods provide processes for determining the common and varying requirements for a product line. However, we experienced that existing m...
متن کاملSoftware Architecture Constraints as Customizable, Reusable and Composable Entities
One of the major advantages of component-based software engineering is the ability for developers to reuse and assemble software entities to build complex software. Whereas decomposition of software into components has been and is largely addressed for what concerns the business (functional) part of applications, this is not yet the case for what concerns their documentation (non-functional) pa...
متن کاملCustomizable, Reusable and Composable Architecture Contracts
One of the major advantages of adopting component-based software engineering is the ability for developers to reuse and assemble software entities to build complex software. Business (functional) component reuse and assembly has been dealt with by many researchers in the literature. However, the issue of reusing and assembling of (nonfunctional) documentation of software components has not been...
متن کاملLearning Object Models and an e-Learning Service Infrastructure for Virtual e-Learning Communities
Multimedia data and application systems accessible over the Web are valuable assets for developing instructional materials for teaching, training, problem solving, and decision support. These assets can be used to construct learning objects, each of which is a reusable granule of instruction designed to meet a specific instructional objective. In order to find and use learning objects, an infra...
متن کاملIndustrial Engineering and Computer Sciences Division (G2I) MADCAR : AN ABSTRACT MODEL FOR DYNAMIC AND AUTOMATIC (RE-)ASSEMBLING OF COMPONENT-BASED APPLICATIONS
Dynamicity is an important requirement for critical software adaptation where a stop can be dangerous (e.g. for humans or environment) or costly (e.g. power plants or production lines). Adaptation at run-time is also required in context-aware applications where execution conditions often change. In this paper, we introduce MaDcAr, an abstract model of dynamic automatic adaptation engines for (r...
متن کامل